signature CODEGEN_STRUCTS =
sig
  structure Frame : FRAME
end

signature CODEGEN = 
sig
  include CODEGEN_STRUCTS

  val ir2framel : Frame.Ir.exdecnode ->
                  (Frame.frame list) * (Frame.Assem.instr list)

  val rebdChs : (Frame.Assem.pprf list * Frame.Assem.ginf) -> 
                (Frame.frame list) * (Frame.Assem.instr list)

  val ir2pprf : Frame.Ir.exdecnode -> 
                (Frame.Assem.pprf list
                 * Frame.Assem.ginf)
  val ir2code : Frame.Ir.exdecnode -> unit
end
